Digital cameras, image scanners, copiers, facsimile machines and other electronic imaging devices provide images in an electronic form suitable for transmission, printing or storage. Picture elements (pixels) are represented numerically as intensity values or coordinates in a color space. Once images are acquired in computer readable form, they may be "processed" to remove distortions, to reduce noise, to modify color, to accentuate outlines, and so forth. This patent document is concerned with image processing, and in particular, spatial filters, also called kernel operations or convolution kernels.
Photosensor arrays used in imaging devices typically have thousands of individual photosensitive elements. Each photosensitive element, in conjunction with optics assemblies, measures light intensity from an effective area defining a pixel on the image being scanned. The resolution defined by the optics and the individual photosensitive elements is called the "native" resolution. Additional pixels may be inserted by interpolation or padding, creating a higher "effective" resolution. Lower resolutions than the effective resolution may then be obtained by dropping selected pixels, called decimation.
Images have spatial frequency information. For example, patterns of dots in half-tone printed images have a spatial frequency. Periodic sampling of spatial patterns may produce aliasing if the spatial sampling frequency is less than twice the highest spatial frequency in the image being sampled. In particular, decimation to provide a lower resolution may introducing aliasing artifacts if the digitized image is not appropriately filtered. Therefore, images may need to be spatially low-pass filtered before decimation is performed.
Another common image processing filter of interest is spatial high-pass filtering, and in particular Laplacian operators. Visually, Laplacian operators improve image contrast at edges, making edges easier for the viewer to see, making an image appear sharper.
Both spatial low pass filtering and spatial high pass filtering may be computed by spatial convolution, in which a pixel value and its surrounding neighboring pixel values are multiplied by coefficients, the results summed, and the resulting value replacing the original pixel value. Convolution in the spatial domain is mathematically equivalent to multiplication in the frequency domain and linear filtering can be implemented in either domain.
For a general tutorial overview of image processing, see, for example, Ross, John C., The Image Processing Handbook, 2nd Edition (1995), CRC Press, Inc. Low pass spatial filtering is discussed in Ross at pages 155-164. Laplacian operators are discussed in Ross at pages 225-232.
Electronic imaging devices are often connected to a host computer. The host computer may include control software for the imaging device, enabling a computer operator to change parameters within the imaging device. In general, for computer control of peripheral devices, it is often preferable for host software to be device-independent. That is, host software should not have to be concerned with specific hardware specifications in a peripheral device. There is a need for an imaging system in which device-specific operations can be performed within an imaging device, transparent to the host computer, and in which a host computer operator can specify some control in a device-independent manner.